看一百遍美女,美女也不一定是你的。但你刷一百遍算法,知识就是你的了~~
谁能九层台,不用累土起!
题目
给你一个整数 n
,请你找出并返回第 n
个 丑数 。
丑数 就是只包含质因数 2
、3
和/或 5
的正整数。
示例 1:
1 | 输入: n = 10 |
示例 2:
1 | 输入: n = 1 |
提示:
1 <= n <= 1690
解题思路
- 从
1
开始,由于1
是特殊的丑数 - 因为丑数是只包含
2
、3
、5
为因数,因此后续的丑数必然是由前面的丑数*2/3/5
得到 - 我们维护三个指针分别计数,如果指针位置的丑数
*
指针的值等于当前的丑数,该指针加一
解题代码
1 | var nthUglyNumber = function(n) { |
如有任何问题或建议,欢迎留言讨论!